Skip to content

CorePeripherals: Target Tree Structure#939

Draft
thorstendb-ARM wants to merge 6 commits into
mainfrom
scvdHierarchical
Draft

CorePeripherals: Target Tree Structure#939
thorstendb-ARM wants to merge 6 commits into
mainfrom
scvdHierarchical

Conversation

@thorstendb-ARM
Copy link
Copy Markdown
Collaborator

@thorstendb-ARM thorstendb-ARM commented Mar 31, 2026

Hierarchical Core Peripherals

This PR introduces hierarchical grouping for the Core Peripherals tree view. Core peripherals like SysTick and NVIC can exist in multiple variants (Secure/Non-Secure with TrustZone, or per-core in multi-core systems). Instead of a flat list, the tree now supports up to three grouping levels:

Single-core without TrustZone — flat list (no change)
Single-core with TrustZone — peripheral → Secure / Non-Secure
Multi-core — core → peripheral → (optional S/NS variants)
For the full design document, see hierarchical-core-peripherals.md.

Ref

#239

Changes

Screenshots

Checklist

  • 🤖 This change is covered by unit tests (if applicable).
  • 🤹 Manual testing has been performed (if necessary).
  • 🛡️ Security impacts have been considered (if relevant).
  • 📖 Documentation updates are complete (if required).
  • 🧠 Third-party dependencies and TPIP updated (if required).

Copy link
Copy Markdown
Collaborator

@jreineckearm jreineckearm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's have a look at this together when I am back (please set up a meeting for that so we don't stall forever).

Index file changes look good. I don't think we should change to showing multiple CPUs at a time. This breaks with the standard VS Code patter of debug connection contexts, i.e. only show the view of one CPU at a time based on the session selection while multiple sessions (connections).
I know the Peripheral Inspector does that differently but mainly because that change was pushed through without considering the rest. I expect something to change here when we redesign it in future (some users complained about that being hard to navigate, especially for multi-core).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants